<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  
  <title>Matrix207&#39;s Blog</title>
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  <meta property="og:type" content="website">
<meta property="og:title" content="Matrix207's Blog">
<meta property="og:url" content="http://yoursite.com/page/16/index.html">
<meta property="og:site_name" content="Matrix207's Blog">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="Matrix207's Blog">
  
    <link rel="alternate" href="/atom.xml" title="Matrix207&#39;s Blog" type="application/atom+xml">
  
  
    <link rel="icon" href="/favicon.png">
  
  
    <link href="//fonts.googleapis.com/css?family=Source+Code+Pro" rel="stylesheet" type="text/css">
  
  <link rel="stylesheet" href="/css/style.css">
  

</head>

<body>
  <div id="container">
    <div id="wrap">
      <header id="header">
  <div id="banner"></div>
  <div id="header-outer" class="outer">
    <div id="header-title" class="inner">
      <h1 id="logo-wrap">
        <a href="/" id="logo">Matrix207&#39;s Blog</a>
      </h1>
      
    </div>
    <div id="header-inner" class="inner">
      <nav id="main-nav">
        <a id="main-nav-toggle" class="nav-icon"></a>
        
          <a class="main-nav-link" href="/">Home</a>
        
          <a class="main-nav-link" href="/archives">Archives</a>
        
      </nav>
      <nav id="sub-nav">
        
          <a id="nav-rss-link" class="nav-icon" href="/atom.xml" title="Flux RSS"></a>
        
        <a id="nav-search-btn" class="nav-icon" title="Rechercher"></a>
      </nav>
      <div id="search-form-wrap">
        <form action="//google.com/search" method="get" accept-charset="UTF-8" class="search-form"><input type="search" name="q" results="0" class="search-form-input" placeholder="Search"><button type="submit" class="search-form-submit">&#xF002;</button><input type="hidden" name="sitesearch" value="http://yoursite.com"></form>
      </div>
    </div>
  </div>
</header>
      <div class="outer">
        <section id="main">
  
    <article id="post-git" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/01/25/git/" class="article-date">
  <time datetime="2013-01-24T16:00:00.000Z" itemprop="datePublished">2013-01-25</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/tools/">tools</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/01/25/git/">git</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <p><img src="/assets/image/posts/git-branch-model.png" alt="Git Branching Model"></p>
<h3 id="what-you-should-know"><a href="#what-you-should-know" class="headerlink" title="what you should know"></a>what you should know</h3><ul>
<li>status of files, “untracked, unmodified, modified, staged”</li>
<li>branch include master, brance A, brance B, and so on</li>
</ul>
<h3 id="help"><a href="#help" class="headerlink" title="help"></a>help</h3><p>when you don’t know what to do first, you can use the <code>help</code> command.</p>
<ul>
<li><code>git --help</code></li>
<li><code>git sub-command --help</code>, e.g: <code>git commit --help</code>, <code>git checkout --help</code></li>
</ul>
<h3 id="config"><a href="#config" class="headerlink" title="config"></a>config</h3><ul>
<li><code>ssh-keygen -t rsa -C &quot;youremailname@gmail.com</code></li>
<li><code>git config --global core.editor &quot;vim&quot;</code></li>
<li><code>git config --global user.email &quot;abc@gmail.com&quot;</code></li>
<li><code>git config --global user.name &quot;matrix207&quot;</code></li>
<li><code>git config --global color.status auto</code></li>
<li><code>git config --global color.diff auto</code></li>
<li><code>git config --global color.branch auto</code></li>
<li><code>git config --global color.branch auto</code></li>
<li><code>git config --global color.paper &quot;less -r&quot;</code> avoid escape characters in <code>git log|diff</code></li>
<li><code>git mergetool --tool=vimdiff</code></li>
<li>list configuration: <code>git config -l</code></li>
<li>cat ~/.gitconfig</li>
<li>git auto completion, git-completion.bash<br><a href="https://github.com/git/git/blob/master/contrib/completion/git-completion.bash" target="_blank" rel="external">https://github.com/git/git/blob/master/contrib/completion/git-completion.bash</a></li>
</ul>
<h3 id="Basic"><a href="#Basic" class="headerlink" title="Basic"></a>Basic</h3><ul>
<li><code>git clone url</code></li>
<li><code>git pull</code> fetch data and try to merge it the working code</li>
<li><code>git fetch</code> only fetch data</li>
<li><code>git status</code><br><code>git status -uno</code> not show untracked files</li>
<li><code>git diff</code><ul>
<li><code>git diff --cached</code> view difference of staged files</li>
<li><code>git diff COMMIT_ONE COMMIT_TWO file</code> view difference for specify file between two commit version</li>
<li><code>git diff fa510^ fa510</code> view difference between previous and specify commit version</li>
</ul>
</li>
<li><code>git rm files</code><br><code>git rm -r path</code> remove directory  </li>
<li><code>git add files</code>  <ul>
<li><code>git add .</code> add all files in current directory  </li>
<li><code>git add -u ./</code> only add tracked files to stage</li>
</ul>
</li>
<li><code>git mv path_fileA path_fileB</code></li>
<li><code>git checkout featureA</code> switch to branch featureA</li>
<li><code>git checkout a.h</code> restore file, if you also have a branch named a.h, should use git checkout – a.h”</li>
<li><code>git reset file</code> unstage file (remove from staged to modified status)</li>
<li><code>git commit</code> commit message with specify editor<br><code>git commit file -m &quot;comment here&quot;</code></li>
<li><code>git remote -v</code></li>
<li><code>git log</code><ul>
<li><code>git log -p -2</code> difference between the latest 2 update</li>
<li><code>git log --stat</code> show detail of changed files</li>
<li><code>git log --author=&quot;dennis&quot;</code> filter log by author</li>
<li><code>git log commit_version</code> </li>
<li><code>git log -S &#39;XXX&#39; file</code> view commit info of specify code of file</li>
<li><code>git log --no-merges</code> not show merge log</li>
</ul>
</li>
<li><code>git clean -f -n</code> Show what will be deleted with the -n option<br><code>git clean -f</code> remove untracked files<br><code>git clean -fd</code> remove untracked files<br><code>git help clean</code> for more information</li>
<li><code>git stash</code> add current modify files to stash<ul>
<li><code>git stash pop</code> pop stash files</li>
<li><code>git stash list</code></li>
<li><code>git stash show</code></li>
<li><code>git help stash</code></li>
</ul>
</li>
</ul>
<h3 id="Advance"><a href="#Advance" class="headerlink" title="Advance"></a>Advance</h3><ul>
<li><code>git reset file</code> undo git add<br><code>git checkout HEAD /path/file</code> undo git operation(rm/modify and so on) on file<br><code>git rm $(git ls-files --deleted)</code> undo git rm multiple files<br><code>git reset --hard origin/master</code> cancel local modify<br><code>git reset --soft HEAD~1</code><br><code>git help reset</code></li>
<li><code>git merge</code><ul>
<li><code>git merge --squash</code> merge code without commit</li>
<li><code>git merge --no-commit</code></li>
</ul>
</li>
<li><code>git branch</code> show all local branch, tell you which is the current branch<br><code>git branch -a</code> show all branch, both local and remote<br><code>git branch -vv</code> print the name of the upstream branch<br><code>git branch --contains &lt;commit&gt;</code> find which local branch contain the specify commit<br><code>git branch -r --contains &lt;commit&gt;</code> find which remote branch contain the specify commit<br><code>git help branch</code> for more</li>
<li>fork+pull</li>
<li><code>git commit --amend</code></li>
<li><code>git blame file</code> view all change info of each line</li>
<li><code>git push origin :branch_name</code> delete remote branch</li>
<li><code>git remote update --prune</code> update remote branch information on local</li>
<li><code>git for-each-ref --format=&#39;%(committerdate) %09 %(authorname) %09 %(refname)&#39;\
 |sort -k5n -k2M -k3n -k4n</code> list remote git branches by author</li>
<li><code>git status --short |awk &#39;$1 ~/^M|A|U/ {print $2}&#39;</code> only show modified files<br><code>vim $(git status --short |awk &#39;$1 ~/^M|A|U/ {print $2}&#39;)</code> editor all modified files by vim</li>
<li><code>git rev-parse</code><ul>
<li><code>git rev-parse HEAD</code> show commit SHA1 of HEAD</li>
</ul>
</li>
<li><code>git log -L</code> show lines history</li>
</ul>
<h3 id="other-command"><a href="#other-command" class="headerlink" title="other command"></a>other command</h3><ul>
<li>git commit –fix-up</li>
</ul>
<h3 id="tags"><a href="#tags" class="headerlink" title="tags"></a>tags</h3><ul>
<li><code>git tag -a v0.1 -m &#39;new tag version 0.1&#39;</code> add tag</li>
<li><code>git push origin master v0.1</code> push tag to origin</li>
</ul>
<h3 id="Skills"><a href="#Skills" class="headerlink" title="Skills"></a>Skills</h3><ul>
<li>reset repository to specify commit version<ul>
<li><code>git clone [remote_address_here] my_repo</code></li>
<li><code>cd my_repo</code></li>
<li><code>git reset --hard [ENTER HERE THE COMMIT HASH YOU WANT]</code></li>
</ul>
</li>
<li>view history version of specify file<ul>
<li><code>git show HEAD:[THE FILE YOU WANT]</code></li>
<li><code>git show HEAD:[THE FILE YOU WANT] &gt; NEW_NAME</code> checkout history commit file</li>
<li><code>git log FILE_PATH</code>, e.g: git log ./log.cc</li>
</ul>
</li>
<li>restore file which was deleted at latest commit.<ul>
<li>first, checkout the file <code>git checkout HEAD^ -- a.txt</code></li>
<li>second, commit <code>git add a.txt &amp;&amp;git commit -m &quot;recover a.txt&quot; &amp;&amp;git push</code></li>
</ul>
</li>
<li><p>multi line comment for commit</p>
<pre><code>[dennis@localhost git]$ mkdir abc
[dennis@localhost git]$ cd abc
[dennis@localhost abc]$ git init
[dennis@localhost abc]$ echo &quot;123&quot;&gt;&gt;1.txt
[dennis@localhost abc]$ git commit -m &quot;first commit
&gt; 
&gt; - test log1
&gt; - test log2&quot;
[dennis@localhost abc]$ git log
commit 98e983f0fdae5ef292083bb5ce288e9344a46751
Author: Dennis &lt;dennis.cpp@gmail.com&gt;
Date:   Fri Aug 1 09:02:52 2014 +0800

    first commit

    - test log1
    - test log2
</code></pre></li>
<li><p>merge commit history</p>
<ul>
<li><code>git rebase -i HEAD~2</code>, modify the second ‘pick’ to ‘squash’ to merge the<br>last two commit into one; If want merge more, just modify 2 to other digit.</li>
<li><code>git push --force origin LOCAL-branch:REMOTE-branch</code>, push to remote repository</li>
</ul>
</li>
<li><p>modify the latest commit (or using for merge commit history)</p>
<ul>
<li><code>git reset --soft HEAD~1</code>, or <code>git reset --soft &lt;commit id&gt;</code> to edit last<br>serval commits.</li>
<li>… do something else for the modification …</li>
<li><code>git commit -c ORIG_HEAD</code> to changed the commit message, or use<br><code>git commit -C ORIG_HEAD</code> to reuse the previous message</li>
<li>reference <code>git help commit</code>, see the <code>--amend</code></li>
</ul>
</li>
<li><p>summary statics</p>
<ul>
<li><code>git log --author=&quot;$(git config --get user.name)&quot; --pretty=tformat: --numstat \
|awk &#39;{add+=$1;subs+=$2;loc+=$1-$2} END{printf &quot;added lines: %s removed lines \
: %s total lines: %s\n&quot;,add,subs,loc}&#39; -</code> count total submit lines of code by author</li>
<li><code>git shortlog -s -n</code> count summary commits by author and sort</li>
<li><code>git log --pretty=&#39;%aN&#39; | sort | uniq -c | sort -k1 -n -r | head -n 5</code> List top 5 commiter</li>
</ul>
</li>
<li><p>add local repository to remote</p>
<ul>
<li><code>git add remote git-url</code></li>
<li><code>git remote -v</code></li>
<li><code>git push origin master</code></li>
</ul>
</li>
</ul>
<h3 id="Find-the-modified-commit-quickly"><a href="#Find-the-modified-commit-quickly" class="headerlink" title="Find the modified commit quickly"></a>Find the modified commit quickly</h3><p>Assume you find that a function was delete in the current commit, and want to<br>find which commit changed this.</p>
<p>Normally, you will work as below:</p>
<ol>
<li><code>git log FILE-INCLUDE-THE-FUNCTION</code> to list the commit history of the file<br>which function belong to.</li>
<li><code>git show COMMIT-SHA</code> and search by the function name</li>
</ol>
<p>The disadvantage of this method:</p>
<ol>
<li>If there lots commit history it would be hard to find.</li>
<li>It depend the human eyes, ;）, which easy to make mistake sometimes.</li>
</ol>
<p>So, we want a script to execute this task:</p>
<ol>
<li>Use <code>git log --pretty=tformat:%h --after 2015-01-05 FILE</code> filter by date, and<br>only show commit hash. <code>git rev-list --all --after 2013-03 FILE</code> work as well<br>too.</li>
<li>Use <code>git show COMMIT-SHA |grep &#39;KEY-WORDS&#39;</code> to do searching.</li>
</ol>
<p>With such two skills, we can write bash command as below:<br><code>git log --pretty=tformat:%h --after 2013-01 FILE |xargs git show |grep -i KEY-WORDS</code></p>
<h3 id="Conflict-handle"><a href="#Conflict-handle" class="headerlink" title="Conflict handle"></a>Conflict handle</h3><ul>
<li>git config –global mergetool=vimdiff</li>
<li>fugitive</li>
<li>reference<ul>
<li><a href="http://vimcasts.org/episodes/fugitive-vim-resolving-merge-conflicts-with-vimdiff/" target="_blank" rel="external">http://vimcasts.org/episodes/fugitive-vim-resolving-merge-conflicts-with-vimdiff/</a></li>
<li><a href="http://blog.jobbole.com/97911/" target="_blank" rel="external">http://blog.jobbole.com/97911/</a></li>
<li><a href="http://blog.csdn.net/redguardtoo/article/details/9076961" target="_blank" rel="external">http://blog.csdn.net/redguardtoo/article/details/9076961</a></li>
<li><a href="http://vimcasts.org/episodes/fugitive-vim-resolving-merge-conflicts-with-vimdiff/" target="_blank" rel="external">http://vimcasts.org/episodes/fugitive-vim-resolving-merge-conflicts-with-vimdiff/</a></li>
</ul>
</li>
</ul>
<h3 id="Other"><a href="#Other" class="headerlink" title="Other"></a>Other</h3><p>Auto pull project, bash script</p>
<pre><code>#!/bin/bash

exclude_dir=&quot;-I test -I hello&quot;

for i in `ls $exclude_dir`
do
{
    if [ -d $i ]; then
        (cd $i; echo update `pwd`; git pull)
    fi
}
done
</code></pre><h3 id="gitignore"><a href="#gitignore" class="headerlink" title="gitignore"></a>gitignore</h3><p>define ignore files in <code>.gitignore</code>  </p>
<pre><code># ignore all .*.swp files
.*.swp
# ignore all *.out files
*.out
# ignore all *.o files
src/*.o
# files in folder
_site/*
</code></pre><p>another example:</p>
<pre><code># Object files
*.o
*.ko
*.obj
*.elf

# Libraries
*.lib
*.a
*.la
*.lo

# Shared objects (inc. Windows DLLs)
*.dll
*.so
*.so.*
*.dylib

# Executables
*.exe
*.out
*.app
*.i*86
*.x86_64
*.hex
</code></pre><p>again:</p>
<pre><code>_site/*
_theme_packages/*

Thumbs.db
.DS_Store

!.gitkeep

.rbenv-version
.rvmrc
</code></pre><h3 id="good-commit-message"><a href="#good-commit-message" class="headerlink" title="good commit message"></a>good commit message</h3><p>Structure your commit message like this:</p>
<p>From: <a href="http://git-scm.com/book/ch5-2.html" target="_blank" rel="external">http://git-scm.com/book/ch5-2.html</a></p>
<p>Short (50 chars or less) summary of changes</p>
<pre><code>More detailed explanatory text, if necessary.  Wrap it to about 72
characters or so.  In some contexts, the first line is treated as the
subject of an email and the rest of the text as the body.  The blank
line separating the summary from the body is critical (unless you omit
the body entirely); tools like rebase can get confused if you run the
two together.

Further paragraphs come after blank lines.

 - Bullet points are okay, too

 - Typically a hyphen or asterisk is used for the bullet, preceded by a
   single space, with blank lines in between, but conventions vary here

 - Use a hanging indent 
</code></pre><h3 id="Team-work-A"><a href="#Team-work-A" class="headerlink" title="Team work A"></a>Team work A</h3><ul>
<li>git clone url</li>
<li>git checkout -b featureA  // create a branch, named “featureA”</li>
<li>coding</li>
<li>git commit -am “ADD COMMENT HERE”</li>
<li>git rebase -i  // make all commit to be one </li>
<li>git push origin featureA  // push your branch to origin<br><img src="http://git-scm.com/book/en/v2/book/05-distributed-git/images/small-team-flow.png" alt="The general sequence is something like this"></li>
</ul>
<h3 id="Team-work-B"><a href="#Team-work-B" class="headerlink" title="Team work B"></a>Team work B</h3><ul>
<li>step 1: git check -b branchT1 remotes/origin/branchT1 (you can change your local branch “branchT1” other name if you want)</li>
<li>step 2: do your coding</li>
<li>step 3: commit your changeds code to your local branch “branchT1”</li>
<li>step 4: loop step 2 and step 3</li>
<li>step 5: git pull origin branchT1 (fetch and merge code, if you not mean do merge, using fetch instead?)</li>
<li>step 6: git push remotes/origin/branchT1</li>
</ul>
<h3 id="Reference"><a href="#Reference" class="headerlink" title="Reference"></a>Reference</h3><ul>
<li><a href="http://git-scm.com/book/zh" target="_blank" rel="external">Pro Git</a></li>
<li><a href="http://www.worldhello.net/gotgithub/index.html" target="_blank" rel="external">GotGitHub</a></li>
<li><a href="http://nvie.com/posts/a-successful-git-branching-model/" target="_blank" rel="external">A successful Git branching model</a></li>
<li><a href="http://git-scm.com/book/ch5-2.html#Commit-Guidelines" target="_blank" rel="external">Commit guidelines</a></li>
<li><a href="http://www.fwolf.com/blog/post/14" target="_blank" rel="external">Git commit 注释格式</a></li>
<li><a href="https://github.com/github/gitignore" target="_blank" rel="external">gitignore</a></li>
<li><a href="http://stackoverflow.com/questions/3555107/git-clone-particular-version-of-remote-repository" target="_blank" rel="external">Git clone particular version of remote repository</a></li>
<li><a href="http://blog.csdn.net/yihui823/article/details/6681214" target="_blank" rel="external">GIT入门之二：版本历史/回溯</a></li>
<li><a href="http://gitready.com/about.html" target="_blank" rel="external">git ready</a></li>
<li><a href="http://backlogtool.com/git-guide/cn" target="_blank" rel="external">猴子都能懂的GIT入门</a></li>
</ul>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/01/25/git/" data-id="ciqqpe1ha002mnmpvdskkoh77" class="article-share-link">Partager</a>
      
      
  <ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/git/">git</a></li></ul>

    </footer>
  </div>
  
</article>


  
    <article id="post-emacs" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/01/25/emacs/" class="article-date">
  <time datetime="2013-01-24T16:00:00.000Z" itemprop="datePublished">2013-01-25</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/tools/">tools</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/01/25/emacs/">emacs</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <ul>
<li><p><a href="http://lpn.rnbhq.org/tools/xemacs/emacs_ref.html" target="_blank" rel="external">Emacs Command List</a></p>
</li>
<li><p><a href="http://aifreedom.com/technology/112" target="_blank" rel="external">Emacs快捷键列表</a></p>
</li>
<li><p><a href="http://emacser.com/capslock.htm" target="_blank" rel="external">交换你的Caps-Lock和右Control键</a></p>
</li>
<li><p><a href="http://blog.csdn.net/DelphiNew/article/details/2053676" target="_blank" rel="external">Effective Emacs 中文版</a></p>
</li>
</ul>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/01/25/emacs/" data-id="ciqqpe1h7002jnmpvrkhxdnis" class="article-share-link">Partager</a>
      
      
  <ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/emacs/">emacs</a></li></ul>

    </footer>
  </div>
  
</article>


  
    <article id="post-maxima-tutorial" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/01/25/maxima-tutorial/" class="article-date">
  <time datetime="2013-01-24T16:00:00.000Z" itemprop="datePublished">2013-01-25</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/math/">math</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/01/25/maxima-tutorial/">maxima tutorial</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <ol>
<li><em>安装</em> <code>yum install maxima</code></li>
<li><em>运行</em> <code>maxima</code></li>
<li><p><em>例子</em>  </p>
<pre><code>[root@localhost ~]# maxima --version
Maxima 5.29.1
[root@localhost ~]# maxima
Maxima 5.29.1 http://maxima.sourceforge.net
using Lisp SBCL 1.1.2-1.fc18
Distributed under the GNU Public License. See the file COPYING.
Dedicated to the memory of William Schelter.
The function bug_report() provides bug reporting information.
(%i1) 2+3;
(%o1)                                  5
(%i2) 1/3;
                                       1
(%o2)                                  -
                                       3
(%i3) float(1/3);
(%o3)                          .3333333333333333
(%i4) sum(i^2, i, 1, 3);
(%o4)                                 14
(%i5) ? if

 -- Special operator: if
     Represents conditional evaluation.  Various forms of `if&apos;
     expressions are recognized.

     `if &lt;cond_1&gt; then &lt;expr_1&gt; else &lt;expr_0&gt;&apos; evaluates to &lt;expr_1&gt; if
     &lt;cond_1&gt; evaluates to `true&apos;, otherwise the expression evaluates
     to &lt;expr_0&gt;.

     The command `if &lt;cond_1&gt; then &lt;expr_1&gt; elseif &lt;cond_2&gt; then
     &lt;expr_2&gt; elseif ... else &lt;expr_0&gt;&apos; evaluates to &lt;expr_k&gt; if
     &lt;cond_k&gt; is `true&apos; and all preceding conditions are `false&apos;.  If
     none of the conditions are `true&apos;, the expression evaluates to
     `expr_0&apos;.

     A trailing `else false&apos; is assumed if `else&apos; is missing.  That is,
     the command `if &lt;cond_1&gt; then &lt;expr_1&gt;&apos; is equivalent to `if
     &lt;cond_1&gt; then &lt;expr_1&gt; else false&apos;, and the command `if &lt;cond_1&gt;
     then &lt;expr_1&gt; elseif ... elseif &lt;cond_n&gt; then &lt;expr_n&gt;&apos; is
     equivalent to `if &lt;cond_1&gt; then &lt;expr_1&gt; elseif ... elseif
     &lt;cond_n&gt; then &lt;expr_n&gt; else false&apos;.

    git/ The alternatives &lt;expr_0&gt;, ..., &lt;expr_n&gt; may be any Maxima
     expressions, including nested `if&apos; expressions.  The alternatives
     are neither simplified nor evaluated unless the corresponding
     condition is `true&apos;.

     The conditions &lt;cond_1&gt;, ..., &lt;cond_git/n&gt; are expressions which
     potentially or actually evaluate to `true&apos; or `false&apos;.  When a
     condition does not actually evaluate to `true&apos; or `false&apos;, the
     behavior of `if&apos; is governed by the global flag `prederror&apos;.  When
     `prederror&apos; is `true&apos;, it is an error if any evaluated condition
     does not evaluate to `true&apos; or `false&apos;.  Otherwise, conditions
     which do not evaluate to `true&apos; or `false&apos; are accepted, and the
     result is a conditional expression.

     Among other elements, conditions may comprise relational and
     logical operators as follows.

          Operation            Symbol      Type

          less than            &lt;           relational infix
          less than            &lt;=
            or equal to                    relational infix
          equality (syntactic) =           relational infix
          negation of =        #           relational infix
          equality (value)     equal       relational function
          negation of equal    notequal    relational function
          greater than         &gt;=
            or equal to                    relational infix
          greater than         &gt;           relational infix
          and                  and         logical infix
          or                   or          logical infix
          not                  not         logical prefix
</code></pre></li>
</ol>
<pre><code>  There are also some inexact matches for `if&apos;.
  Try `?? if&apos; to see them.git/

(%o5)                                true
(%i6) 
(%i6) quit ();
[root@localhost ~]# 
</code></pre><ol>
<li><p><em>画图</em>  </p>
<p> <code>plot2d(x^3+2*x^2-3,[x,-2,2]);</code></p>
<p> <img src="/assets/image/posts/maxima-plot2d.png" alt="plot2d"></p>
<p> <code>plot3d(sin(x)*cos(y),[x,-2,2],[y,-2,2]);</code></p>
<p> <img src="/assets/image/posts/maxima-plot3d.png" alt="plot3d"></p>
</li>
<li><p><em>编程</em><br> 创建一个后缀为max(可以是任何后缀)的文件,如test.max,编辑代码后保存.<br> 在maxima环境中执行<code>batch(&quot;test.max&quot;)</code></p>
<p> test.max</p>
<pre><code>a:2;
b:5;
a^3+b^2;
</code></pre><p> 执行效果</p>
<pre><code>(%i3) batch(&quot;test.max&quot;);

read and interpret file: /root/prj/git/euler/maxima/test.max
(%i4)                                a : 2
(%o4)                                  2
(%i5)                                b : 5
(%o5)                                  5
                                    2    3
(%i6)                               b  + a
(%o6)                                 33
(%o6)                 /root/prj/git/euler/maxima/test.max
</code></pre><p> 关于batch的更多用法，请查阅帮助手册中的章节<code>13.3 Functions and Variables for File Input and Output</code></p>
</li>
<li><p><em>其他范例</em><br> <a href="http://projecteuler.net/problem=1" target="_blank" rel="external">Project Euler第1题</a>  </p>
<pre><code>sum(if (mod(i, 3) = 0) or (mod(i, 5) = 0) then i else 0, i, 1, 999)
</code></pre><p> <a href="http://projecteuler.net/problem=1" target="_blank" rel="external">Project Euler第2题</a><br> euler2.max</p>
<pre><code>s:0$
for i:3 while fib(i)&lt;=4*10^6 do (s:s+fib(i), i:i+2)$
display(s);
</code></pre><p> 执行效果</p>
<pre><code>(%i164) batch(&quot;euler2.max&quot;);

read and interpret file: /root/prj/euler/maxima/euler2.max
(%i165)                              s : 0
                                         6
(%i166) for i from 3 while fib(i) &lt;= 4 10  do (s : fib(i) + s, i : 2 + i)
(%i167)                           display(s)
                                  s = 4613732

(%o167)                              done
(%o167)              /root/prj/euler/maxima/euler2.max    
</code></pre></li>
<li><p><em>相关语法说明</em><br> <code>;</code> 代码结束符<br> <code>$</code> 多行代码<br> <code>,</code> 多个语句使用<code>(sentence1, sentence2)</code>  </p>
</li>
<li><p><em>帮助手册</em><br> 浏览器查看文件<code>/usr/share/maxima/5.29.1/doc/html/maxima.html</code></p>
</li>
</ol>
<p>相关教程资源:  </p>
<ul>
<li><a href="http://maxima.sourceforge.net/docs/manual/en/maxima.html" target="_blank" rel="external">Maxima 5.28.0 Manual</a></li>
<li><a href="http://www.matrix67.com/blog/archives/337" target="_blank" rel="external">Linux下的数学工具Maxima 简明教程 上</a></li>
<li><a href="http://www.matrix67.com/blog/archives/338" target="_blank" rel="external">Linux下的数学工具Maxima 简明教程 下</a></li>
<li><a href="http://maxima.sourceforge.net/docs/tutorial/en/gaertner-tutorial-revision/Contents.htm" target="_blank" rel="external">The Computer Algebra Program Maxima - a Tutorial</a></li>
<li><a href="http://tranzing.blogspot.com/2005/01/maxima.html" target="_blank" rel="external">maxima 笔记</a></li>
<li><a href="http://andrejv.wordpress.com/category/maxima/" target="_blank" rel="external">andrejv’s blog</a></li>
<li><a href="http://inside.mines.edu/fs_home/whereman/software.html" target="_blank" rel="external">一些代码</a></li>
<li><a href="http://inside.mines.edu/fs_home/whereman/software/painleve/macsyma/single/np_sing.max" target="_blank" rel="external">一些代码</a></li>
<li><a href="http://math-blog.com/2007/06/04/a-10-minute-tutorial-for-solving-math-problems-with-maxima/" target="_blank" rel="external">A 10 minute tutorial for solving math problems with maxima</a></li>
<li><a href="https://webfiles.uci.edu/huanm/www/maxima/maxima_zh.pdf" target="_blank" rel="external">Maxima快速参考手册</a></li>
</ul>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/01/25/maxima-tutorial/" data-id="ciqqpe1hd002pnmpvquis5qee" class="article-share-link">Partager</a>
      
      
  <ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/maxima/">maxima</a></li></ul>

    </footer>
  </div>
  
</article>


  
    <article id="post-my-book-list" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/01/23/my-book-list/" class="article-date">
  <time datetime="2013-01-22T16:00:00.000Z" itemprop="datePublished">2013-01-23</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/person/">person</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/01/23/my-book-list/">my book list</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <ul>
<li><p><strong><em>Unix网络编程 卷1: 套接字联网API</em></strong>(在读)</p>
</li>
<li><p><strong><em>Unix网络编程 卷2: 进程间通讯</em></strong>(在读)</p>
</li>
<li><p><strong><em>Shell脚本编程学习指南</em></strong>(在读)</p>
</li>
<li><p><strong><em>实用Common Lisp编程</em></strong>(推荐指数 <strong><em>★★★★★</em></strong> 已读)</p>
</li>
<li><p><strong><em>Unix编程艺术</em></strong>(推荐指数 <strong><em>★★★★★</em></strong> 已读,需再读)</p>
</li>
<li><p><strong><em>Python基础教程</em></strong>(已读,需再读)</p>
</li>
<li><p><strong><em>Unix环境高级编程</em></strong>(只读一小部分)</p>
</li>
<li><p><strong><em>深入理解Linux内核</em></strong>(粗略的翻完,需再读)</p>
</li>
<li><p><strong><em>黑客与画家</em></strong>(推荐指数 <strong><em>★★★★★</em></strong>已读毕,一些思想很好)</p>
</li>
<li><p><strong><em>Linux设备驱动程序</em></strong>(需从头到尾仔细的走一边，未读完)</p>
</li>
<li><p><strong><em>程序员的数学</em></strong>(未读)</p>
</li>
<li><p><strong><em>编程之美</em></strong>(推荐指数 <strong><em>★★★★</em></strong> 读过一些)</p>
</li>
<li><p><strong><em>C专家编程</em></strong>(推荐指数 <strong><em>★★★★★</em></strong> 已读三遍以上,需再读)</p>
</li>
<li><p><strong><em>深入理解计算机系统</em></strong>(对感兴趣的章节大体翻了翻)</p>
</li>
<li><p><strong><em>C和指针</em></strong>(未读完,C专家编程比此书更值得读)</p>
</li>
<li><p><strong><em>计算机程序设计艺术 第一卷基本算法</em></strong>(太难,没有怎么看)</p>
</li>
<li><p><strong><em>程序算法与技巧精选</em></strong>()</p>
</li>
<li><p><strong><em>加密与解密</em></strong>(基本上没有用过里面的东西，只是原先感兴趣)</p>
</li>
<li><p><strong><em>C++ Primer</em></strong>(我把这书当成工具书,需要的时候翻翻)</p>
</li>
<li><p><strong><em>Effect C++</em></strong>(英文版,需要的时候翻翻)</p>
</li>
<li><p><strong><em>编程珠玑Programming Pearls</em></strong>(看小部分)</p>
</li>
<li><p><strong><em>数学之美(已看大部分)</em></strong></p>
</li>
<li><p><strong><em>学习vi和Vim编辑器(影印版)</em></strong>(已看)</p>
</li>
<li><p><strong><em>你不可不知的50个数学知识</em></strong>(未看)</p>
</li>
<li><p><strong><em>思考的乐趣-Matrix67数学笔记</em></strong>(读某些,大部分还没看)</p>
</li>
<li><p><strong><em>数学大师-从芝诺到庞加莱</em></strong>(对数学感兴趣的同学可以了解下数学大师的人品啊成就啊人生啊)</p>
</li>
</ul>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/01/23/my-book-list/" data-id="ciqqpe1h5002gnmpvi3iypv54" class="article-share-link">Partager</a>
      
      
  <ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/book/">book</a></li></ul>

    </footer>
  </div>
  
</article>


  
    <article id="post-ssh-tunnel" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/01/22/ssh-tunnel/" class="article-date">
  <time datetime="2013-01-21T16:00:00.000Z" itemprop="datePublished">2013-01-22</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/tools/">tools</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/01/22/ssh-tunnel/">ssh tunel</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <p>引子:<br>最近火车票抢票插件问题引起的连锁效应，导致github访问出现问题，不管是GFW墙了github<br>还是github墙了China,总之结果是，无法更新github上的blog了(pull和push都失败).  </p>
<p>使用ssh隧道可以访问墙外的网站，那么是否使用同样(或类似的原理)来访问github的项目呢?<br>为此，对ssh tunel进行了一番搜索研究，以下是一些收集的信息:  </p>
<ul>
<li><code>ssh -f -NC -D7070 username@sample.com</code>  浏览器翻墙用的命令<br> -f 后台运行<br> -N 仅作端口转发,不执行任何命令<br> -C 压缩数据<br> -D 指定动态端口  </li>
</ul>
<ul>
<li><p><a href="http://www.rzg.mpg.de/networkservices/ssh-tunnelling-port-forwarding" target="_blank" rel="external">SSH Tunnelling (Port Forwarding)</a></p>
</li>
<li><p><a href="http://zh.wikipedia.org/wiki/%E9%9A%A7%E9%81%93%E5%8D%8F%E8%AE%AE" target="_blank" rel="external">隧道协议</a></p>
</li>
<li><p><a href="http://blog.jianingy.com/2009/09/ssh%E9%9A%A7%E9%81%93%E6%8A%80%E6%9C%AF%E7%AE%80%E4%BB%8B/" target="_blank" rel="external">隧道技术简介</a></p>
</li>
<li><p><a href="http://fvalinux.pixnet.net/blog/post/26923337-ssh-tunnel-using-putty" target="_blank" rel="external">SSH Tunnel using Putty</a></p>
</li>
<li><p><a href="http://www.freebsd.org/cgi/man.cgi?query=ssh" target="_blank" rel="external">SSH command manual</a></p>
</li>
</ul>
<p>TODO:<br>如何通过ssh隧道来进行git操作(pull,push and so on)  </p>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/01/22/ssh-tunnel/" data-id="ciqqpe1gy002dnmpv2p6y0w26" class="article-share-link">Partager</a>
      
      
  <ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/ssh/">ssh</a></li></ul>

    </footer>
  </div>
  
</article>


  
    <article id="post-lisp" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/01/21/lisp/" class="article-date">
  <time datetime="2013-01-20T16:00:00.000Z" itemprop="datePublished">2013-01-21</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/language/">language</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/01/21/lisp/">lisp</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <p><em>学习资料</em>:</p>
<ul>
<li><p><a href="http://acl.readthedocs.org/en/latest/" target="_blank" rel="external">ANSI Common Lisp 中文翻譯版</a><br>  (重点学习书籍)</p>
</li>
<li><p><a href="http://www.lispworks.com/success-stories/index.html" target="_blank" rel="external">lisp work</a><br>  (Lisp成功案例)</p>
</li>
<li><p><a href="http://www.gnu.org/software/gcl/gcl.html" target="_blank" rel="external">gcl-GNU Common Lisp</a><br>  (编译器)</p>
</li>
<li><p><a href="http://www.douban.com/group/topic/26704799/" target="_blank" rel="external">推动Common Lisp的实际应用</a></p>
</li>
<li><p><a href="http://www.lispchina.com/%E5%AF%B9lisp%E5%BA%94%E7%94%A8%E7%9A%84%E4%B8%80%E7%82%B9%E5%BF%83%E5%BE%97.html" target="_blank" rel="external">对Lisp应用的一点心得</a></p>
</li>
<li><p><a href="http://coolshell.cn/articles/7526.html" target="_blank" rel="external">Lisp的永恒之道</a></p>
</li>
<li><p><a href="http://book.douban.com/subject/6859720/" target="_blank" rel="external">实用Common Lisp编程</a><br>  (书籍)</p>
</li>
<li><p><a href="http://www.cnblogs.com/xuliu/archive/2010/08/20/1804900.html" target="_blank" rel="external">你是如何成为 Lisp 程序员的</a></p>
</li>
<li><p><a href="http://stackoverflow.com/questions/2992925/how-can-i-simply-run-lisp-files" target="_blank" rel="external">How can I simply “run” lisp files</a></p>
</li>
<li><p><a href="http://www.flatws.cn/article/program/python/2011-04-18/21091.html" target="_blank" rel="external">小议common lisp程序开发流程</a></p>
</li>
<li><p><a href="http://google-styleguide.googlecode.com/svn/trunk/lispguide.xml" target="_blank" rel="external">Google Common Lisp Style Guide</a><br>  (google Common Lisp编程规范)</p>
</li>
<li><p><a href="http://www.norvig.com/paip/README.html" target="_blank" rel="external">Paradigms of AI Programming Source Code</a></p>
</li>
<li><p><a href="http://www-2.cs.cmu.edu/Groups/AI/html/faqs/lang/lisp/part4/faq-doc-1.html" target="_blank" rel="external">lisp compiler/interpreter</a> </p>
<pre><code>(lisp 编译器/解释器)
</code></pre></li>
<li><p><a href="http://tianchunbinghe.blog.163.com/blog/static/700120089175316746/" target="_blank" rel="external">All Common Lisp Implementations</a><br>  (13 种 Common Lisp 实现，其中 7 个是开源的，6 个是商业实现)</p>
</li>
<li><p><a href="http://cnlox.is-programmer.com/posts/34114.html#fn.11" target="_blank" rel="external">走进Lisp的世界——兼谈Emacs下Lisp的开发环境（上</a></p>
</li>
<li><p><a href="http://cnlox.is-programmer.com/categories/7113/posts#fn.4" target="_blank" rel="external">Knight Rush——关于编程语言学习的一些思考</a><br>  (这篇文章主要不是讲Lisp的，但值得一读，可借鉴于未来的博文写法)</p>
</li>
<li><p><a href="http://tianchunbinghe.blog.163.com/blog/#m=0&amp;t=1&amp;c=fks_081066084087083095083086086066" target="_blank" rel="external">中国lisp hacker冰河的lisp文章</a></p>
</li>
<li><p>洪峰何许人也，说白了GNU唯一认可的中国（可能现在该说华裔了）“HACKER” <a href="http://tieba.baidu.com/p/883892221" target="_blank" rel="external">来源</a><br><a href="http://www.supernovas.cn/hf/hongfeng.html" target="_blank" rel="external">洪峰主页</a></p>
</li>
<li><p><a href="http://article.yeeyan.org/view/legendsland/209584" target="_blank" rel="external">至今听到关于 Lisp 最迷人的故事</a></p>
</li>
</ul>
<blockquote>
<p>在 ILC 2002 大会上前Lisp大神，当今的Python倡导者Peter Norvig，由于某些原因，做一个类似于马丁路德在梵蒂冈宣扬新教的主题演讲，因为他在演讲中大胆地声称Python就是一种Lisp。</p>
<p>讲完后进入提问环节，出乎我意料的是，Peter点了我过道另一侧，靠上面几排座位的一个老头，他衣着皱褶，在演讲刚开始的时候踱步进来，然后就靠在了那个座位上面。</p>
<p>这老头满头凌乱的白发，邋遢的白胡须，像是从旅行团中落下的游客，已经完全迷路了，闲逛到这里来歇歇脚，随便看看我们都在这里干什么。我的第一个念头是，他会因为我们的奇怪的话题感到相当失望；接着，我意识到这位老头的年纪，想到斯坦福就在附近，而且我想那人也在斯坦福 —— 难道他是……</p>
<p>“嗨，John，有什么问题？” Peter说。</p>
<p>虽然这只是10个字左右的问题，我不会假装自己记住了Lisp之父约翰麦卡锡说的每一个字。他在问Python程序能不能像处理数据一样，优雅地处理Python代码。</p>
<p>“不行。John, Python做不到。” Peter就回答了这一句，然后静静地等待，准备接受教授的质疑，但老人没有再说什么了。此时，无语已胜千言</p>
</blockquote>
<ul>
<li><p><a href="http://www.oschina.net/code/snippet_58387_13359" target="_blank" rel="external">用 Emacs Lisp 开发 CGI 程序</a></p>
</li>
<li><p><a href="http://www.googies.info/blog/374.html" target="_blank" rel="external">Ubuntu下搭建Emacs+SLIME+Lisp环境</a></p>
</li>
<li><p><a href="http://common-lisp.net/~dlw/LispSurvey.html" target="_blank" rel="external">Common Lisp Implementations</a><br>  (各种CommonLisp的实现—编译器、解释器)</p>
</li>
<li><p><a href="http://lisp.org.cn/" target="_blank" rel="external">Lisp 中文社区维基</a></p>
</li>
<li><p><a href="http://common-lisp.net/project/slime/" target="_blank" rel="external">SLIME: The Superior Lisp Interaction Mode for Emacs</a></p>
</li>
<li><p><a href="https://groups.google.com/forum/?fromgroups=#!forum/lisp-cn" target="_blank" rel="external">google lisp中文用户组</a></p>
</li>
<li><p><a href="http://floss.zoomquiet.org/item20051011211537-frameset.html" target="_blank" rel="external">Lisp文章汇总</a></p>
</li>
<li><p><a href="http://tianchunbinghe.blog.163.com/blog/static/7001200692314249376/?suggestedreading&amp;wumii" target="_blank" rel="external">用sbcl,asdf和cl-launch编写可分发的lisp程序</a></p>
</li>
</ul>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/01/21/lisp/" data-id="ciqqpe1gu002anmpvofxdinya" class="article-share-link">Partager</a>
      
      
  <ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/lisp/">lisp</a></li></ul>

    </footer>
  </div>
  
</article>


  
    <article id="post-emacs-org-mode" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/01/21/emacs-org-mode/" class="article-date">
  <time datetime="2013-01-20T16:00:00.000Z" itemprop="datePublished">2013-01-21</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/tools/">tools</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/01/21/emacs-org-mode/">Emacs org mode</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <p><strong>网络资料</strong></p>
<ul>
<li><a href="http://orgmode.org/worg/org-tutorials/" target="_blank" rel="external">org tutorials</a></li>
<li><a href="http://emacser.com/org-mode.htm" target="_blank" rel="external">Emacs org mode学习笔记</a></li>
<li><a href="http://www.cnblogs.com/holbrook/archive/2012/04/12/2444992.html#sec-3-5" target="_blank" rel="external">org-mode，最好的文档编辑利器，没有之一</a></li>
<li><a href="http://emacser.com/org-mode-tricks.htm" target="_blank" rel="external">Org-mode写作的几个快捷方式</a></li>
<li><a href="http://i.linuxtoy.org/docs/guide/ch32.html" target="_blank" rel="external">组织你的意念：Emacs org mode</a></li>
<li><a href="http://www.cnblogs.com/qlwy/archive/2012/06/15/2551034.html" target="_blank" rel="external">神器中的神器org-mode之入门篇</a></li>
</ul>
<hr>
<p><strong><em>解决导出pdf无法显示中文问题</em></strong>  </p>
<ul>
<li><p><em>安装xetex</em><br> <code>yum install texlive-xetex-bin.x86_64</code></p>
</li>
<li><p><em>安装其他缺少的包</em><br> <code>yum install texlive-xetex-def</code><br> <code>yum install texlive-xltxtra</code><br> <code>yum install texlive-xecjk</code><br> <code>yum install texlive-wrapfig</code>  </p>
</li>
<li><p><em>问题</em>: LaTeX Error: Encoding scheme EU1 unknown.<br> 解决: 使用yum安装<code>yum install &#39;tex(eu1enc.def)&#39;</code> 或 <code>yum install texlive-euenc</code>，ok问题解决，可以生成中文pdf了.<br> 参考: <a href="http://hi.baidu.com/coco_zhao/item/0ceb6ff40885ca68922af276" target="_blank" rel="external">fedora 17 ctex 中文</a></p>
</li>
</ul>
<p><strong><em>下划线转义问题</em></strong></p>
<ul>
<li>_为了不要转义下划线，如<code>my_test</code>中的下划线保留，需在org文件头部加入<code>#+OPTIONS: ^:nil</code>_</li>
</ul>
<p><strong>参考文章</strong>:   </p>
<ul>
<li><a href="http://www.cnblogs.com/visayafan/archive/2012/06/16/2552023.html" target="_blank" rel="external">配置Emacs org-mode利用latex生成pdf文件</a></li>
<li><a href="http://tangboyun.ixiezi.com/index.php/2011/05/latex-export-in-emacs-org-mode/" target="_blank" rel="external">LaTeX Export In Emacs Org-Mode</a></li>
<li><a href="http://blog.waterlin.org/articles/emacs-org-mode-subscripter-setting.html" target="_blank" rel="external">Org Mode 标记语言的一些疑问</a></li>
</ul>
<hr>
<ul>
<li><a href="http://www.worldhello.net/gotgithub/index.html" target="_blank" rel="external">使用Org-mode和html5slides制作幻灯片</a><blockquote>
<p>html5slides 是 Google 公司的一个开源项目，可使用 HTML5 技术制作幻灯片。<br>在线演示：<br><a href="http://html5slides.googlecode.com/svn/trunk/template/index.html" target="_blank" rel="external">http://html5slides.googlecode.com/svn/trunk/template/index.html</a></p>
</blockquote>
</li>
</ul>
<hr>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/01/21/emacs-org-mode/" data-id="ciqqpe1go0027nmpv6u8154v4" class="article-share-link">Partager</a>
      
      
  <ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/emacs/">emacs</a></li></ul>

    </footer>
  </div>
  
</article>


  
    <article id="post-write-gedit-plugin-with-python" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/01/18/write-gedit-plugin-with-python/" class="article-date">
  <time datetime="2013-01-17T16:00:00.000Z" itemprop="datePublished">2013-01-18</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/tools/">tools</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/01/18/write-gedit-plugin-with-python/">write gedit plugin with python</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <ul>
<li><p>开发参考: <a href="http://www.nongnu.org/gcmd/dev.html" target="_blank" rel="external">http://www.nongnu.org/gcmd/dev.html</a></p>
</li>
<li><p>插件参考: <a href="https://live.gnome.org/Gedit/Plugins" target="_blank" rel="external">https://live.gnome.org/Gedit/Plugins</a></p>
</li>
<li><p>可以使用C或Python编写插件.<br>推荐使用Python,相对于C,python使用很少量的代码完成工作.<br>但是如要使用到C库，还是需要使用C来编写.</p>
</li>
<li><p>如何使用C编写插件: <a href="https://live.gnome.org/Gedit/NewMDIPluginHowTo" target="_blank" rel="external">https://live.gnome.org/Gedit/NewMDIPluginHowTo</a></p>
</li>
<li><p>如何使用Python编写插件: <a href="https://live.gnome.org/Gedit/PythonPluginHowTo" target="_blank" rel="external">https://live.gnome.org/Gedit/PythonPluginHowTo</a></p>
</li>
</ul>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/01/18/write-gedit-plugin-with-python/" data-id="ciqqpe1gd0025nmpvh38ciwhg" class="article-share-link">Partager</a>
      
      
    </footer>
  </div>
  
</article>


  
    <article id="post-create-flowchart-by-graphviz" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/01/18/create-flowchart-by-graphviz/" class="article-date">
  <time datetime="2013-01-17T16:00:00.000Z" itemprop="datePublished">2013-01-18</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/tools/">tools</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/01/18/create-flowchart-by-graphviz/">create flowchart by graphviz</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <h3 id="Fedora"><a href="#Fedora" class="headerlink" title="Fedora"></a>Fedora</h3><ol>
<li><p><code>yum install graphviz</code>  </p>
</li>
<li><p>write test.dot as below:  </p>
<pre><code>graph example1 {
Server1 -- Server2
Server2 -- Server3
Server3 -- Server1
}
</code></pre></li>
<li><p><code>dot -Tpng test.dot -o test.png</code><br><code>dot -Tsvg test.dot -o test.svg</code></p>
</li>
<li><p><code>rsvg-convert -f pdf -o test.pdf test.svg</code>  convert svg to pdf</p>
</li>
</ol>
<h3 id="Reference"><a href="#Reference" class="headerlink" title="Reference"></a>Reference</h3><ul>
<li><a href="http://icodeit.org/2012/01/使用graphviz绘制流程图/" target="_blank" rel="external">使用graphviz绘制流程图</a></li>
<li><a href="http://www.oschina.net/question/129540_79958" target="_blank" rel="external">http://www.oschina.net/question/129540_79958</a></li>
<li><a href="http://www.graphviz.org/Gallery.php" target="_blank" rel="external">http://www.graphviz.org/Gallery.php</a></li>
<li><a href="http://www.jishurensheng.com/article-hjo8380-8433934.html" target="_blank" rel="external">http://www.jishurensheng.com/article-hjo8380-8433934.html</a></li>
<li><a href="http://www.fxysw.com/thread-1633-1-1.html" target="_blank" rel="external">http://www.fxysw.com/thread-1633-1-1.html</a> </li>
<li><a href="http://www.wanglianghome.org/blog/2006/05/graphviz-introduction.html" target="_blank" rel="external">http://www.wanglianghome.org/blog/2006/05/graphviz-introduction.html</a></li>
<li><a href="http://superuser.com/questions/381125/how-do-i-convert-an-svg-to-a-pdf-on-linux" target="_blank" rel="external">http://superuser.com/questions/381125/how-do-i-convert-an-svg-to-a-pdf-on-linux</a></li>
<li><a href="http://emacser.com/emacs_graphviz_ds.htm" target="_blank" rel="external">http://emacser.com/emacs_graphviz_ds.htm</a></li>
<li><a href="http://tubocurarine.is-programmer.com/posts/27164.html" target="_blank" rel="external">http://tubocurarine.is-programmer.com/posts/27164.html</a></li>
<li><a href="http://forum.ubuntu.org.cn/viewtopic.php?f=63&amp;t=374855" target="_blank" rel="external">http://forum.ubuntu.org.cn/viewtopic.php?f=63&amp;t=374855</a></li>
<li><a href="http://www.graphviz.org/doc/libguide/libguide.pdf" target="_blank" rel="external">http://www.graphviz.org/doc/libguide/libguide.pdf</a></li>
<li><a href="http://m.oschina.net/blog/70050" target="_blank" rel="external">linux源代码分析和阅读工具比较</a></li>
<li><a href="http://blog.csdn.net/lanxuezaipiao/article/details/16991731" target="_blank" rel="external">看开源代码利器—用Graphviz + CodeViz生成C/C++函数调用图</a></li>
<li><a href="http://blog.csdn.net/Solstice/article/details/488865" target="_blank" rel="external">分析函数调用关系图(call graph)的几种方法</a></li>
</ul>
<ul>
<li><a href="http://blog.csdn.net/solstice/article/details/486788" target="_blank" rel="external">用CodeViz绘制函数调用关系图 call graph</a></li>
</ul>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/01/18/create-flowchart-by-graphviz/" data-id="ciqqpe1g90020nmpvcx3sy5hv" class="article-share-link">Partager</a>
      
      
  <ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/dot/">dot</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/flowchart/">flowchart</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/graphviz/">graphviz</a></li></ul>

    </footer>
  </div>
  
</article>


  
    <article id="post-my-linux-software-list" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/01/16/my-linux-software-list/" class="article-date">
  <time datetime="2013-01-15T16:00:00.000Z" itemprop="datePublished">2013-01-16</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/person/">person</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/01/16/my-linux-software-list/">List my linux software</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <h3 id="更新历史"><a href="#更新历史" class="headerlink" title="更新历史"></a>更新历史</h3><table class="table"><br>   <tr><br>      <td>日期</td><br>      <td>版本</td><br>      <td>详细</td><br>   </tr><br>   <tr><br>      <td>2015-01-26</td><br>      <td>1.3</td><br>      <td>FC21</td><br>   </tr><br>   <tr><br>      <td>2014-06-11</td><br>      <td>1.2</td><br>      <td>FC20</td><br>   </tr><br>   <tr><br>      <td>2013-01-19</td><br>      <td>1.1</td><br>      <td>加入前序,排版,增加项目</td><br>   </tr><br>   <tr><br>      <td>2013-01-16</td><br>      <td>1.0</td><br>      <td>第一版, FC18</td><br>   </tr><br></table>

<h3 id="使用历史"><a href="#使用历史" class="headerlink" title="使用历史"></a>使用历史</h3><p>约在04年左右开始接触Linux，印象中使用的应该是国内的红旗;<br>但后续的日子，基本上没有再接触了. 直到在上海工作，闲来无事，在网上写了个地址，然<br>后收到张A国寄来的Ubuntu光盘，就又重新接触了，大约是08年吧；之后有使用过Fedora，<br>工作中也使用过centos(主要用作编译服务器，ftp服务，版本仓库),其他的也有用过，<br>如Mint(作Linux kernel编译玩具)，BackTrack(用于信息安全方面的系统，基本不会用);<br>近半年来，回了南方，换了工作，有机会全身心投入Linux世界，于是乎把公司以及家里的<br>系统kill掉，全换成了Fedora17,前天升级到fc18.</p>
<p>这里罗列Linux(Fedora)下常用的一些工具，主要作为备忘，别无他目.</p>
<h3 id="工具列表"><a href="#工具列表" class="headerlink" title="工具列表"></a>工具列表</h3><ul>
<li><p>远程桌面: rdesktop, teamviewer</p>
</li>
<li><p>抓包工具: wireshark</p>
</li>
<li><p>虚拟机: Virtual Box、kvm</p>
</li>
<li><p>办公软件: LibOffice(浏览工作中的文档)</p>
</li>
<li><p>浏览器: Firefox(插件vimperator,autoproxy)、Chrome(插件vimium,TunnelSwitch)</p>
</li>
<li><p>邮件: Thunderbird</p>
</li>
<li><p>文件管理: gnome-commander(类似于windows下的TotalCommander,但差很多)</p>
</li>
<li><p>版本控制: git(写blog和查看开源代码时使用)、svn(工作时使用)</p>
</li>
<li><p>代码编辑器: VIM、Emacs</p>
</li>
<li><p>十六进制文件编辑: bless, hexdump -C, vim -b</p>
</li>
<li><p>笔记: Emacs org mode, markdown</p>
</li>
<li><p>流程图: graphviz dot (其他工具 PlantUML bouml)</p>
</li>
<li><p>博客: github+jekyll</p>
</li>
<li><p>下载: wget</p>
</li>
<li><p>墙外: ssh or goagent + firefox autoproxy, 鲨鱼VPN</p>
</li>
<li><p>数学软件: maxima</p>
</li>
<li><p>翻译: stardict</p>
</li>
<li><p>IRC: irssi、xchat</p>
</li>
<li><p>即时通(IM): skype</p>
</li>
<li><p>RSS: greader、liferea</p>
</li>
<li><p>文档转换: pandoc(convert documents to pdf)</p>
</li>
<li><p>图片编辑: gimg shutter ImageMagick</p>
</li>
<li><p>视频播放: smplayer</p>
</li>
<li><p>其他:  系统监测-Conky </p>
</li>
</ul>
<h3 id="Install-on-FC20"><a href="#Install-on-FC20" class="headerlink" title="Install on FC20"></a>Install on FC20</h3><pre><code># 2014-06-11 Create by Dennis

yum install -y rdesktop

# for gvim
yum install -y vim-X11 vim-common vim-enhanced vim-minimal
# for vim
yum install -y cscope ctags 

# for git svn g++  
yum install -y git svn gcc-c++ 

# for thunderbird, download the rpm package from website
#yum install thunderbird-24.5.0-1.fc20.x86_64.rpm 
yum install -y thunderbird

# for jekyll  
yum install -y ruby-devel
# it will take several minutes to finish
gem install jekyll
gem install rake
# for js
yum install -y nodejs

# for graphviz
yum install -y graphviz

# for teamviewer, download rpm package from website
# yum install teamviewer_linux.rpm 

yum install sqlite-devel

yum install clang

# for dict
yum install -y stardict

# for ImageMagick
yum install -y ImageMagick
</code></pre><p>For pandoc generate pdf   </p>
<pre><code>yum install pandoc 
yum -y install texlive texlive-latex texlive-xetex
yum -y install texlive texlive-latex texlive-xetex
yum -y install texlive-collection-latex
yum -y install texlive-collection-latexrecommended
yum -y install texlive-xetex-def
yum -y install texlive-collection-xetex
#Only if needed:
#yum install texlive-collection-latexextra
yum install texlive-titlesec
yum install texlive-titling
yum install texlive-lastpage
yum install &quot;tex(eu1enc.def)&quot;
yum install texlive-xetex-def
yum install texlive-xecjk
</code></pre><p>Install virtualbox  </p>
<pre><code># for virtualbox, download rpm package from website
yum install VirtualBox-4.3-4.3.12_93733_fedora18-1.x86_64.rpm
yum install dkms
/etc/init.d/vboxdrv setup

# **trouble shoot**
#
# [root@indigo kernel]# /etc/init.d/vboxdrv setup  
# Stopping VirtualBox kernel modules                         [  OK  ]  
# Uninstalling old VirtualBox DKMS kernel modules            [  OK  ]  
# Trying to register the VirtualBox kernel modules using DKMSError! echo  
# Your kernel headers for kernel 3.14.5-200.fc20.x86_64 cannot be found at  
# /lib/modules/3.14.5-200.fc20.x86_64/build or /lib/modules/3.14.5-200.fc20.x86_64/source.  
#                                                            [FAILED]  
#   (Failed, trying without DKMS)  
# Recompiling VirtualBox kernel modules                      [FAILED]  
#   (Look at /var/log/vbox-install.log to find out what went wrong)
#
yum instal kernel
yum instal kernel-devel
reboot
# then select the latest kernel to boot the os

# add dennis to vboxusers group, support virtualbox USB (default root)
gpasswd -a dennis vboxusers
[dennis@localhost ~]$ groups $USER
dennis : dennis vboxusers
</code></pre><p>Install rar   </p>
<pre><code>wget -c http://www.rarsoft.com/rar/rarlinux-x64-5.1.0.tar.gz
tar xvf rarlinux-x64-5.1.0.tar.gz
cd rar
make
</code></pre><p>Install smplayer  </p>
<pre><code>rpm -ivh http://rpm.livna.org/livna-release.rpm
rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm
rpm -Uvh http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm
yum -y install smplayer
yum -y install mplayer-gui
</code></pre><h3 id="参考链接"><a href="#参考链接" class="headerlink" title="参考链接"></a>参考链接</h3><ul>
<li><a href="http://www.linuxalt.com/" target="_blank" rel="external">The Linux Alternative Project</a></li>
<li><a href="http://www.chenxuanyi.cn/fedora-smplayer-mplayer.html" target="_blank" rel="external">Fedora安装smplayer和mplayer</a></li>
</ul>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/01/16/my-linux-software-list/" data-id="ciqqpe1g5001ynmpvctsoysim" class="article-share-link">Partager</a>
      
      
    </footer>
  </div>
  
</article>


  


  <nav id="page-nav">
    <a class="extend prev" rel="prev" href="/page/15/">&laquo; __('prev')</a><a class="page-number" href="/">1</a><span class="space">&hellip;</span><a class="page-number" href="/page/14/">14</a><a class="page-number" href="/page/15/">15</a><span class="page-number current">16</span><a class="page-number" href="/page/17/">17</a><a class="page-number" href="/page/18/">18</a><a class="extend next" rel="next" href="/page/17/">__('next') &raquo;</a>
  </nav>
</section>
        
          <aside id="sidebar">
  
    
  <div class="widget-wrap">
    <h3 class="widget-title">Catégories</h3>
    <div class="widget">
      <ul class="category-list"><li class="category-list-item"><a class="category-list-link" href="/categories/blog/">blog</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/database/">database</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/english/">english</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/kernel/">kernel</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/language/">language</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/linux/">linux</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/math/">math</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/network/">network</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/others/">others</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/person/">person</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/program/">program</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/source/">source</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/storage/">storage</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/tools/">tools</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/windows/">windows</a></li></ul>
    </div>
  </div>


  
    
  <div class="widget-wrap">
    <h3 class="widget-title">Mot-clés</h3>
    <div class="widget">
      <ul class="tag-list"><li class="tag-list-item"><a class="tag-list-link" href="/tags/FAQ/">FAQ</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/IRC/">IRC</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/Translation/">Translation</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/android/">android</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/api/">api</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/assembly/">assembly</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/awk/">awk</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/batch/">batch</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/blog/">blog</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/book/">book</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/c/">c</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/c/">c++</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/cache/">cache</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/crash/">crash</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/database/">database</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/debug/">debug</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/dot/">dot</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/driver/">driver</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/emacs/">emacs</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/exploit/">exploit</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/file-system/">file system</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/filesystem/">filesystem</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/flowchart/">flowchart</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/gcc/">gcc</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/git/">git</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/google/">google</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/graphviz/">graphviz</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/hexo/">hexo</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/hosts/">hosts</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/iscsi/">iscsi</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/java/">java</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/javascript/">javascript</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/job/">job</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/json/">json</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/kernel/">kernel</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/linux/">linux</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/lisp/">lisp</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/lua/">lua</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/makefile/">makefile</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/malloc/">malloc</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/math/">math</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/maxima/">maxima</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/memory/">memory</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/memory-overflow/">memory overflow</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/mtrace/">mtrace</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/netdisk/">netdisk</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/network/">network</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/others/">others</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/pandoc/">pandoc</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/performance/">performance</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/person/">person</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/protobuf/">protobuf</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/python/">python</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/rsync/">rsync</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/sed/">sed</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/shell/">shell</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/skype/">skype</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/sms/">sms</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/source/">source</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/ssh/">ssh</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/stack/">stack</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/storage/">storage</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/study/">study</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/svn/">svn</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/sync/">sync</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/test/">test</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/time/">time</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/tools/">tools</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/valgrind/">valgrind</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/vi/">vi</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/vim/">vim</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/virtual/">virtual</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/wget/">wget</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/windows/">windows</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/wireshark/">wireshark</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/write/">write</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/xml/">xml</a></li></ul>
    </div>
  </div>


  
    
  <div class="widget-wrap">
    <h3 class="widget-title">Nuage de mot-clés</h3>
    <div class="widget tagcloud">
      <a href="/tags/FAQ/" style="font-size: 10px;">FAQ</a> <a href="/tags/IRC/" style="font-size: 10px;">IRC</a> <a href="/tags/Translation/" style="font-size: 13px;">Translation</a> <a href="/tags/android/" style="font-size: 10px;">android</a> <a href="/tags/api/" style="font-size: 10px;">api</a> <a href="/tags/assembly/" style="font-size: 10px;">assembly</a> <a href="/tags/awk/" style="font-size: 11px;">awk</a> <a href="/tags/batch/" style="font-size: 14px;">batch</a> <a href="/tags/blog/" style="font-size: 10px;">blog</a> <a href="/tags/book/" style="font-size: 10px;">book</a> <a href="/tags/c/" style="font-size: 16px;">c</a> <a href="/tags/c/" style="font-size: 19px;">c++</a> <a href="/tags/cache/" style="font-size: 10px;">cache</a> <a href="/tags/crash/" style="font-size: 10px;">crash</a> <a href="/tags/database/" style="font-size: 17px;">database</a> <a href="/tags/debug/" style="font-size: 12px;">debug</a> <a href="/tags/dot/" style="font-size: 10px;">dot</a> <a href="/tags/driver/" style="font-size: 10px;">driver</a> <a href="/tags/emacs/" style="font-size: 11px;">emacs</a> <a href="/tags/exploit/" style="font-size: 10px;">exploit</a> <a href="/tags/file-system/" style="font-size: 10px;">file system</a> <a href="/tags/filesystem/" style="font-size: 12px;">filesystem</a> <a href="/tags/flowchart/" style="font-size: 10px;">flowchart</a> <a href="/tags/gcc/" style="font-size: 10px;">gcc</a> <a href="/tags/git/" style="font-size: 12px;">git</a> <a href="/tags/google/" style="font-size: 11px;">google</a> <a href="/tags/graphviz/" style="font-size: 11px;">graphviz</a> <a href="/tags/hexo/" style="font-size: 10px;">hexo</a> <a href="/tags/hosts/" style="font-size: 10px;">hosts</a> <a href="/tags/iscsi/" style="font-size: 14px;">iscsi</a> <a href="/tags/java/" style="font-size: 10px;">java</a> <a href="/tags/javascript/" style="font-size: 10px;">javascript</a> <a href="/tags/job/" style="font-size: 10px;">job</a> <a href="/tags/json/" style="font-size: 10px;">json</a> <a href="/tags/kernel/" style="font-size: 14px;">kernel</a> <a href="/tags/linux/" style="font-size: 14px;">linux</a> <a href="/tags/lisp/" style="font-size: 10px;">lisp</a> <a href="/tags/lua/" style="font-size: 10px;">lua</a> <a href="/tags/makefile/" style="font-size: 10px;">makefile</a> <a href="/tags/malloc/" style="font-size: 10px;">malloc</a> <a href="/tags/math/" style="font-size: 11px;">math</a> <a href="/tags/maxima/" style="font-size: 10px;">maxima</a> <a href="/tags/memory/" style="font-size: 11px;">memory</a> <a href="/tags/memory-overflow/" style="font-size: 10px;">memory overflow</a> <a href="/tags/mtrace/" style="font-size: 10px;">mtrace</a> <a href="/tags/netdisk/" style="font-size: 10px;">netdisk</a> <a href="/tags/network/" style="font-size: 20px;">network</a> <a href="/tags/others/" style="font-size: 18px;">others</a> <a href="/tags/pandoc/" style="font-size: 10px;">pandoc</a> <a href="/tags/performance/" style="font-size: 16px;">performance</a> <a href="/tags/person/" style="font-size: 11px;">person</a> <a href="/tags/protobuf/" style="font-size: 11px;">protobuf</a> <a href="/tags/python/" style="font-size: 10px;">python</a> <a href="/tags/rsync/" style="font-size: 10px;">rsync</a> <a href="/tags/sed/" style="font-size: 11px;">sed</a> <a href="/tags/shell/" style="font-size: 15px;">shell</a> <a href="/tags/skype/" style="font-size: 11px;">skype</a> <a href="/tags/sms/" style="font-size: 10px;">sms</a> <a href="/tags/source/" style="font-size: 11px;">source</a> <a href="/tags/ssh/" style="font-size: 10px;">ssh</a> <a href="/tags/stack/" style="font-size: 10px;">stack</a> <a href="/tags/storage/" style="font-size: 15px;">storage</a> <a href="/tags/study/" style="font-size: 10px;">study</a> <a href="/tags/svn/" style="font-size: 11px;">svn</a> <a href="/tags/sync/" style="font-size: 10px;">sync</a> <a href="/tags/test/" style="font-size: 11px;">test</a> <a href="/tags/time/" style="font-size: 10px;">time</a> <a href="/tags/tools/" style="font-size: 16px;">tools</a> <a href="/tags/valgrind/" style="font-size: 10px;">valgrind</a> <a href="/tags/vi/" style="font-size: 10px;">vi</a> <a href="/tags/vim/" style="font-size: 14px;">vim</a> <a href="/tags/virtual/" style="font-size: 11px;">virtual</a> <a href="/tags/wget/" style="font-size: 10px;">wget</a> <a href="/tags/windows/" style="font-size: 11px;">windows</a> <a href="/tags/wireshark/" style="font-size: 10px;">wireshark</a> <a href="/tags/write/" style="font-size: 13px;">write</a> <a href="/tags/xml/" style="font-size: 10px;">xml</a>
    </div>
  </div>

  
    
  <div class="widget-wrap">
    <h3 class="widget-title">Archives</h3>
    <div class="widget">
      <ul class="archive-list"><li class="archive-list-item"><a class="archive-list-link" href="/archives/2016/07/">July 2016</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2016/04/">April 2016</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2016/03/">March 2016</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2016/02/">February 2016</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2016/01/">January 2016</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2015/11/">November 2015</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2015/10/">October 2015</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2015/09/">September 2015</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2015/08/">August 2015</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2015/07/">July 2015</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2015/06/">June 2015</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2015/03/">March 2015</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2015/02/">February 2015</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2015/01/">January 2015</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2014/12/">December 2014</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2014/11/">November 2014</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2014/09/">September 2014</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2014/08/">August 2014</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2014/07/">July 2014</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2014/06/">June 2014</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2014/05/">May 2014</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2014/04/">April 2014</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2014/03/">March 2014</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/11/">November 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/10/">October 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/09/">September 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/08/">August 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/07/">July 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/06/">June 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/05/">May 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/04/">April 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/03/">March 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/02/">February 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/01/">January 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2012/12/">December 2012</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2012/09/">September 2012</a></li></ul>
    </div>
  </div>


  
    
  <div class="widget-wrap">
    <h3 class="widget-title">Articles récents</h3>
    <div class="widget">
      <ul>
        
          <li>
            <a href="/2016/07/17/how-to-implement-malloc/">如何实现一个malloc</a>
          </li>
        
          <li>
            <a href="/2016/07/17/study-grep-more/">grep工作原理</a>
          </li>
        
          <li>
            <a href="/2016/07/17/2016-04-13-malloc/">malloc</a>
          </li>
        
          <li>
            <a href="/2016/04/27/include-what-you-use/">使用IWYU整理头文件引用</a>
          </li>
        
          <li>
            <a href="/2016/04/24/understand-gcc-assembly-output/">understand gcc assembly output</a>
          </li>
        
      </ul>
    </div>
  </div>

  
</aside>
        
      </div>
      <footer id="footer">
  
  <div class="outer">
    <div id="footer-info" class="inner">
      &copy; 2016 Matrix207<br>
      Propulsé by <a href="http://hexo.io/" target="_blank">Hexo</a>
    </div>
  </div>
</footer>
    </div>
    <nav id="mobile-nav">
  
    <a href="/" class="mobile-nav-link">Home</a>
  
    <a href="/archives" class="mobile-nav-link">Archives</a>
  
</nav>
    

<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>


  <link rel="stylesheet" href="/fancybox/jquery.fancybox.css">
  <script src="/fancybox/jquery.fancybox.pack.js"></script>


<script src="/js/script.js"></script>

  </div>
</body>
</html>